package tp1;

public class IteradorLectura extends Iterador{

	public IteradorLectura(Matriz m){
		matriz = m;
		current = null;
	}

	
	public IteradorLectura crearIteradorLecturaEnFila(Matriz m, int fila) throws InterruptedException{
		
		IteradorLectura ite = new IteradorLectura(m);
		
		for(int i = 0 ; i < m.ancho ;i++){
			m.celdaEnPosicion(i, fila).leer();
		}
		
		ite.current = m.filas.get(fila).celdas.get(0);
		
		return ite;
	}
	
	public void next(){
		
		current.terminarDeLeer();
		current = matriz.celdaEnPosicion(current.x + 1, current.y);

	}
	
	public void end(){
		
		while(hasCurrent()) next();
		}
	
	public void leerEnCelda(int x, int y) throws InterruptedException{
		current = matriz.celdaEnPosicion(x, y);
		current.leer();
	}
	
	public void terminarDeLeerEnCelda(){
		current.terminarDeLeer();
	}
}
